phpMyAdmin 4.0.x—4.6.2 远程代码执行漏洞 (CVE-2016-5734)

phpMyAdmin 4.0.x—4.6.2 远程代码执行漏洞 (CVE-2016-5734)

phpMyAdmin 是一个用 PHP 编写的免费软件工具,旨在通过 Web 处理 MySQL 的管理。漏洞在preg_replace函数中,因为用户提交的信息可以拼接到第一个参数中。

在 PHP 5.4.7 之前,preg_replace可以将的第一个参数截断,\0并将搜索模式更改为\e。它可能导致远程代码执行漏洞。

受影响的版本:

  • 4.0.10.16 之前的 4.0.x 版本
  • 4.4.15.7 之前的 4.4.x 版本
  • 4.6.3之前的4.6.x版本(其实因为这个版本需要PHP5.5+,这个漏洞无法复现)

漏洞复现

启动 PHP 5.3 + Apache + phpMyAdmin 4.4.15.6,启动后,访问http://192.168.44.132:8080,您将看到phpMyAdmin的登录页面。登录使用root:root

此漏洞需要登录和写入数据的权限。

我们使用这个 POC(https://www.exploit-db.com/exploits/40185/)来重现漏洞。

1
python3 cve-2016-5734.py -c 'system(id);' -u root -p root -d test http://192.168.44.132:8080/

image-20211209181834891

0%